--- GENERAL ---
1. you don't have to start a new world for new changes to take effect or for the mod to work, LootTables are assets think
   of them like resourcepacks, so you can change them whenever you want.
2. delete the tables cache if you updated the config to apply the changes.
3. also delete the files if you ran into problems.
4. and you can also edit the tags and cache file for further customization, the file is in config/KozhinAPI/_item_tags_cache.json, and
   it can be edited, but be careful don't break the json structure because crash or missing tables cache could happen.
5. you can use the debugging configs to know everything the mod does to the tables.
6. the mod includes chat commands /findblock /findzone which both can be used to find chest and teleports you to it under one command.
7. most items in minecraft have COMMON rarity you can use EPIC and RARE to only protect the items that can't be crafted or hard to find,
   which is why they might be EPIC or RARE because they meant to be found in chests like Enchanted Golden Apple which is EPIC.
8. if you don't want to rarity checks to have no influence over the filters disable them, which will result in missing EPIC and RARE items.


--- NEW FEATURES ---
1. I added GLM Global Loot Modifier to the system, that uses the same exact filters and configs that Loot Table Modifier uses, and both
   modifiers are togglable and both can run at the same although stack size modifiers will stack, but custom loot tables won't stack.
   GlobalLootModifier will modify runtime loots and other mods GlobalLootModifiers also modified, also for the configs categories I made
   to also include this prefix (inject/chests/ and same for others) that mods use to inject into vanilla loot tables.

2. I added a debug method GLM if its ON it will spawn a chest above the original chest without the modified loot, to debug what GLM removed.

3. now you can remove any craftable item or any item that has a recipe in the game, with a random chance keep for the treats, and also you
   can change weight quality of the Empty Stack used to replace the removed items, also added a new protection flag to skip any uncraftable items.

4. while you can toggle both modifiers, but if you leave both on, they can modify same loot table twice, but I had no chance but to keep it,
   when a quality modifier apply on a loot table and then in game you open the chest of this loot table, you double the quality modifier meaning
   if a stack was 64 and your quality was at 50% downgrade at first with the loot table it becomes 32 and then with the global loot modifier this
   item stack becomes 16.
   and you might ask why?, well the answer is most or half of mods add items with global loot modifiers these items are skipped during loot table process,
   so I had to keep this feature for those items but then any item that came back from the loot tables they will be reprocessed.
   and yes I can track them but the memory cost is not worth it, while you can just disable one of them.

5.caching is removed because modded loot tables cant be serialized and saved by Minecraft base CODEC engine and I cant access the modded
   CODECs to cache their tables, so they become corrupt and ruin the cache so yes the game have to modify every run which costs nothing it
   depends on your modlist in my case I have a 500 modlist is taking 1 second only or even less.

6. the majority of the mods doesn't use minecraft naming which is impossible to capture their tables weather they mean it for chests or entities
   or whatever, so I added other.toml which is the config for the rest, so I didn't leave a single table I technically process all.

7. I added dynamic config generator incase you wanted to have a different config for specific mod or loot table inside the custom_loots_list.txt
   file you have an empty list of loot table names if you put any table name here case-sensitive the mod will generate a config file for it and
   you can use the found_loot_tables text file to know the names of all the tables in your modpack.
   the second list is for namespace meaning all tables of a mod, the thirds list is to target, table names that start with what in the list the
   starting text, of the name, so a list of prefix.


Using the GLM is way better and more performant in general so only use the loot table model when its necessary or a specific reason, other than that
GLM is the best option here.
Note: blockedItems cannot save items if they are generated by a Tag in the base loot table. Use GLM if you need granular tag protection.


-:removed eatable items:-
anything eatable is removed from minecraft eatables category item.isEdible function, ofcourse if they pass the rarity check.
I also blacklisted some items by default, while they should be protected with the rarity check:
golden_apple
enchanted_golden_apple
tropical_fish
pufferfish
rotten_flesh
spider_eye
poisonous_potato
golden_carrot
suspicious_stew
honey_bottle

-:removed tools items:-
anything tha fells under forge's tools category is removed, ofcourse if they pass the rarity check.
also use these tags
                    item instanceof DiggerItem || "axe,shovel,hoe,pickaxe"
                    item instanceof ShearsItem ||
I also blacklisted some items by default, while they can be protected with the rarity checks as well:
carrot on a stick
warped_fungus_on_a_stick
golden hoe
golden shovel
turtle helmet
elytra
shield
fishing rod
brush

-:removed armors:-
anything with tags (helmet,chestplate,leggings,boots) is removed from minecraft armor category item.isArmor function, ofcourse if they pass the rarity check.

-:removed ores:-
anything tha fells under forge's ores tags like ingot, ore, gem and so on. is removed.
blacklisted nothing by default so any netherite items are removed if rarity is high be careful.

-:weapon removes these items:-
anything tha fells under forge's weapon tags is removed, like projectiles, swords, axe, bows, and so on.
no blacklist here as well if you wanted to save certain item put it in block list,
while rarity and NBT filter will save most special weapons comes from mods and the game.

